<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8" />
		<meta http-equiv="X-UA-Compatible" content="IE=edge" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<title>Document</title>
	</head>
	<body>
		<script>
			// 父类由加法方法
			class Father {
				constructor(x, y) {
					this.x = x;
					this.y = y;
				}
				sum() {
					console.log(this.x + this.y);
				}
			}

			// 子类继承父类的加法方法，同时拓展减法方法
			class Son extends Father {
				constructor(x, y) {
					// 利用 super 调用父类的构造函数
					// super 必须在子类 this 之前调用（必须先调用父类的构造方法，再使用子类构造方法）
					super(x, y);
					this.x = x;
					this.y = y;
				}
				subtract() {
					console.log(this.x - this.y);
				}
			}
			let son = new Son(5, 3);
			son.subtract();
			son.sum();
		</script>
	</body>
</html>
